VhlCfg / File / DesfireKeyList Value

Contains the list of keys needed to access a Desfire card with this VHL file. These keys are referenced by VhlCfg/File/DesfireFileDesc

Properties

Format

Name Type/Size Description
- Array (until end of frame) -
AccessRights.KeySettings Bit mask (8 bits) Access rights and key info

Access rights: By default, all operations are allowed. With this bitmask, however, this key can be locked for certain operations.

IsVersion Boolean (bit 0x80) -
IsDivInfo Boolean (bit 0x40) The value for diversification data can be found in Project/DiversificationData.
IsDivInfoVhl Boolean (bit 0x20) The value for diversification data can be found in VhlCfg/File/DesfireDiversificationData.
RFU Integer (bit mask area 0x18) Zero padding
DenyFormat Boolean (bit 0x04) -
DenyWrite Boolean (bit 0x02) -
DenyRead Boolean (bit 0x01) -
Optional field, condition: IsVersion
AccessRights.Version Integer (8 bits) Key version.
Optional field, condition: IsDivInfo
AccessRights.DiversificationMode Enumeration (8 bits) Values:
  • NoDiversification (0x00)
  • ModeAv2 (0x02)
    Key diversification according to NXP AN10922.
AccessRights.DivIdx Integer (8 bits)

Index for data converter rule: Possible values:

  • Range 0..0x7F: Rule located in project
Algorithm Enumeration (8 bits) This byte defines the crypto algorithm that shall be used when working with the key that is following. The CryptoAlgorithm furhtermore implies the length of the following key
Values:
  • DES (0x01)
    Keylength: 8 byte
  • TripleDES (0x02)
    Keylength: 16 byte
  • ThreeKeyTripleDES (0x03)
    Keylength: 24 byte
  • AES (0x04)
    Keylength: 16 byte
  • MifareClassic (0x05)
    Keylength: 6 byte
Optional field, condition: Algorithm == Algorithm.DES
DesKey Raw data (length 8 Bytes) This is the key that shall be used for DES authentication.
Optional field, condition: Algorithm == Algorithm.ThreeKeyTripleDES
ThreeKeyTripleDESKey Raw data (length 24 Bytes) This is the key that shall be used for 3K3DES authentication.
Optional field, condition: (Algorithm == Algorithm.TripleDES) or (Algorithm == Algorithm.AES)
TripleDesAesKey Raw data (length 16 Bytes) This is the key that shall be used for 3DES or AES authentication.
Optional field, condition: Algorithm == Algorithm.MifareClassic
MifareClassicKey Raw data (length 6 Bytes) This is the key that shall be used for MifareClassic authentication.